Καλώς ορίσατε στο dotNETZone.gr - Σύνδεση | Εγγραφή | Βοήθεια
σε

 

Αρχική σελίδα Ιστολόγια Συζητήσεις Εκθέσεις Φωτογραφιών Αρχειοθήκες

ενημέρωση label μιας φορμας απο μια class

Îåêßíçóå áðü ôï ìÝëïò evagelos. Τελευταία δημοσίευση από το μέλος Nassos.NET στις 13-01-2014, 16:37. Υπάρχουν 4 απαντήσεις.
Ταξινόμηση Δημοσιεύσεων: Προηγούμενο Επόμενο
  •  13-11-2013, 19:34 74631

    ενημέρωση label μιας φορμας απο μια class

    Γεια σας παιδια,

    Εστω οτι εχω μια φορμα "myFrm", μια class "myClass" και ενα label "label1"

    Πως μπορώ να ενημερώνω το label1 ΑΠΟ την myClass;

     

    Ευχαριστώ

  •  13-11-2013, 23:01 74636 σε απάντηση της 74631

    Απ: ενημέρωση label μιας φορμας απο μια class

    Καλησπέρα,

    Θα πρέπει να περάσεις ένα reference του Label στην κλάση σου - μπορείς να το κάνεις κατά την δημιουργία του αντικειμένου, είτε με μια μέθοδο που θα έχει μια παράμετρο τύπου Label.

     

    George J.

     


    George J. Capnias: Χειροπρακτικός Υπολογιστών, Ύψιστος Γκουράρχης της Κουμπουτερολογίας
    w: capnias.org, t: @gcapnias, l: gr.linkedin.com/in/gcapnias
    dotNETZone.gr News
  •  14-11-2013, 08:26 74642 σε απάντηση της 74636

    Απ: ενημέρωση label μιας φορμας απο μια class

    θα μπορπύσες να μου δωσεις ενα παραδειγμα;

    ευχαριστώ

  •  23-11-2013, 10:49 74704 σε απάντηση της 74642

    Απ: ενημέρωση label μιας φορμας απο μια class

    Επειδή βρήκα την λυση και τουλαχιστον λειτουργει την παραθετω για τυχων αναλυση:

                    DLLForm myopenFrm = (DLLForm)System.Windows.Forms.Application.OpenForms["DLLForm"];
                    myopenFrm.label1.Text = "μπλα μπλα";

  •  13-01-2014, 16:37 74887 σε απάντηση της 74704

    Απ: ενημέρωση label μιας φορμας απο μια class

    Ο Καλύτερος Τρόπος είναι μέσου του μηχανισμού DataBinding του Label.

    παραθέτω τον κώδικα για την φόρμα και για το MyClass.  

    Για να μπορεις να δεις ότι αλλαζει Live εχει η φόρμα ένα textBox και ένα button που όταν πατηθεί κάνει το LabeName του MyClass ίδιο με το textBox1.Text και αλλάζει και το label. 

     

    public partial class Form1 : Form
        {
            MyClass _myClass;
            public Form1()
            {
                InitializeComponent();
                _myClass = new MyClass();
            }
     
            private void Form1_Load(object sender, EventArgs e)
            {
                label1.DataBindings.Add("Text", _myClass, "LabelName");
            }
     
            private void button1_Click(object sender, EventArgs e)
            {
                _myClass.ChangeLabel(textBox1.Text);
            }
        }

     Ο Κωδικας της MyClass:


        public class MyClass:INotifyPropertyChanged
        {
            private string _labelName;
     
            public string LabelName
            {
                get { return _labelName; }
                set
                {
                    if (_labelName != value)
                    {
                        _labelName = value;
                        RaisePropertyChanged("LabelName");
                    }
                }
            }
     
            public MyClass()
            {
                LabelName = "Test";
            }
     
            #region INotifyPropertyChanged Members
     
            public event PropertyChangedEventHandler PropertyChanged;
     
            #endregion
     
            public void ChangeLabel(string text)
            {
                LabelName = text;
            }
     
            private void RaisePropertyChanged(string propertyName)
            {
                if (PropertyChanged!=null)
                    PropertyChanged(this,new PropertyChangedEventArgs(propertyName));
            }
        }
    }

     


    "Success is the ability to go from one failure to another with no loss of enthusiasm."
    Winston Churchill

    "Quality means doing it right when no one is looking."
    Henry Ford

Προβολή Τροφοδοσίας RSS με μορφή XML
Με χρήση του Community Server (Commercial Edition), από την Telligent Systems